gtk_text_buffer_get_iter_at_mark (buffer, &insert_point,
paste_point_override);
if (clear_afterward)
- gtk_text_buffer_delete_mark (buffer,
- gtk_text_buffer_get_mark (buffer,
- "gtk_paste_point_override"));
+ gtk_text_buffer_delete_mark (buffer, paste_point_override);
}
else
{
emit_paste_done (buffer, clipboard);
}
+ else
+ {
+ /* It may happen that we set a point override but we are not inserting
+ any text, so we must remove it afterwards */
+ GtkTextMark *paste_point_override;
+
+ paste_point_override = gtk_text_buffer_get_mark (buffer,
+ "gtk_paste_point_override");
+
+ if (paste_point_override != NULL)
+ gtk_text_buffer_delete_mark (buffer, paste_point_override);
+ }
free_clipboard_request (request_data);
}